package com.project.dao;


import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.project.bean.OutBean;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.time.LocalDate;
import java.util.List;

/**
 * 出库持久层
 */
@Repository
public interface OutDao extends BaseMapper<OutBean> {
    /**
     * 分页显示所有出库信息
     * @return
     */
    List<OutBean> findAllOut();


    /**
     * 添加出库信息
     */
    void addOut(OutBean outBean);



//    void addMeOut(@Param("outId") int outId,@Param("arrays") List<MeOutBean> array);
    void addMeOut(@Param("outId") int outId,
                  @Param("num") int num,
                  @Param("arrays") int[] array);


    /**
     * 根据出库明细id修改领用数量
     */
    void updateOutNum(@Param("id") int meOutId,@Param("num") int num);

    /**
     * 根据出库id查询出库信息
     * @param outId
     * @return
     */
    OutBean findId(@Param("outId") int outId);

    /**
     * 根据领用小班、起始日期、结束日期查询出库信息
     * @param outClass
     * @param startTime
     * @param endTime
     * @return
     */
    List<OutBean> findName(String outClass, LocalDate startTime, LocalDate endTime);


    /**
     * 根据出库信息去删除物品信息
     * @param outId
     * @param meId
     */
    void del(@Param("outId") int outId,
             @Param("meId") int meId);
}
